package com.samphanie.auiu.ui.banner.core;

import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.viewpager.widget.ViewPager;

import com.samphanie.auiu.ui.banner.AuiuBanner;
import com.samphanie.auiu.ui.banner.indicator.AuiuIndicator;
import com.samphanie.auiu.ui.refresh.AuiuOverView;

import java.util.List;

/**
 * @author ZSY
 */
public interface IAuiuBanner {

    void setBannerData(@LayoutRes int layoutResId, @NonNull List<? extends AuiuBannerMo> models);

    void setBannerData(@NonNull List<? extends AuiuBannerMo> models);

    void setAuiuIndicator(AuiuIndicator auiuIndicator);

    void setAutoPlay(boolean autoPlay);

    void setLoop(boolean loop);

    void setIntervalTime(int intervalTime);

    void setBindAdapter(IBindAdapter bindAdapter);

    void setOnPageChangeListener(ViewPager.OnPageChangeListener onPageChangeListener);

    void setOnBannerClickListener(AuiuBanner.OnBannerClickListener onBannerClickListener);

    void setScrollDuration(int duration);

    interface OnBannerClickListener {
        void onBannerClick(@NonNull AuiuBannerAdapter.AuiuBannerViewHolder viewHolder, @NonNull AuiuBannerMo bannerMo, int position);
    }

}
